package com.yanfan.zutai.domain;

import com.yanfan.common.annotation.Excel;
import com.yanfan.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 设备报警对象 b_device_warn
 *
 * @author ruoyi
 * @date 2021-02-27
 */
@Data
public class BDeviceWarn extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id唯一标识
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /**
     * 设备编号(like查询)
     */
    @Excel(name = "设备编号")
    private String deviceMac;

    /**
     * 设备名称(like)
     */
    @Excel(name = "设备名称")
    private String deviceName;

    /**
     * 所在位置
     */
    @Excel(name = "所在位置")
    private String address;

    /**
     * 报警类型
     */
    @Excel(name = "报警类型")
    private String warnType;

    /**
     * 报警时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "报警时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date warnTime;
    /**
     * 报警信息
     */
    @Excel(name = "报警信息")
    private String warnMessage;

    /**
     * 关闭人
     */
    @Excel(name = "关闭人")
    private String shutPeople;
    /**
     * 关闭时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "关闭时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date shutTime;
    /**
     * 处理状态 0或null未处理 1已处理
     */
    @Excel(name = "处理状态")
    private Integer processState;
    /**
     * 经度
     */
    @Excel(name = "经度")
    private Double longitude;

    /**
     * 纬度
     */
    @Excel(name = "纬度")
    private Double latitude;

    /**
     * 报警标识
     */
    @Excel(name = "报警标识")
    private Integer warnAngle;
    /**
     * 工单guid
     */
    private String workOrderGuid;
    /**
     * 设备号/设备名称查询
     */
    private String deviceQuery;
    /*查询今天的数据*/
    private String deviceNow;
    /**
     * 当日报警时间
     */
    @JsonFormat(pattern = "HH:mm")
    private Date warnNowTime;

    /*查询组态的报警记录*/
    private String ztGuid;
    private List<String> imeiList;
    private String deptIdStrs;

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date beginTime;

    /**
     * 结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
}
